Motor control device, and method and device for estimating magnetic flux of electric motor

ABSTRACT

A motor control device is provided, which includes a power converter for applying output voltage according to a voltage command to an electric motor, a magnetic flux estimator for estimating a vector of stator magnetic flux of the electric motor based on a difference between the output voltage and a voltage drop caused by a coil resistance of the electric motor, and a phase estimator for estimating a phase of the stator magnetic flux based on the vector of the stator magnetic flux estimated by the magnetic flux estimator. The magnetic flux estimator includes a variable low-pass filter for applying a low-pass filter to the difference at a cut-off frequency according to a frequency of the output voltage, and a phase adjuster for retarding at least one of an output phase of the variable low-pass filter and a phase of the difference before inputted into the variable low-pass filter.

CROSS-REFERENCE TO RELATED APPLICATION

The application claims priority under 35 U.S.C. §119 to Japanese PatentApplication No. 2014-154075, which was filed on Jul. 29, 2014, theentire disclosure of which is hereby incorporated by reference.

TECHNICAL FIELD

The disclosed embodiment relates to a motor control device, and a methodand device for estimating a magnetic flux of an electric motor.

BACKGROUND

It is known that control devices which drive electric motors, such assynchronous motors and induction motors without any position sensors.For example, JP2012-228083A discloses a technique to estimate a statormagnetic flux of an electric motor based on current and voltage of theelectric motor. The electric motor is controlled based on the estimatedstator magnetic flux.

SUMMARY

According to one mode of the disclosed embodiment, a motor controldevice is provided, which includes a power converter for applying outputvoltage according to a voltage command to an electric motor, a magneticflux estimator for estimating a vector of stator magnetic flux of theelectric motor based on a difference between the output voltage and avoltage drop caused by a coil resistance of the electric motor, and aphase estimator for estimating a phase of the stator magnetic flux basedon the vector of the stator magnetic flux estimated by the magnetic fluxestimator. The magnetic flux estimator includes a variable low-passfilter for applying a low-pass filter to the difference at a cut-offfrequency according to a frequency of the output voltage, and a phaseadjuster for retarding at least one of an output phase of the variablelow-pass filter and a phase of the difference before inputted into thevariable low-pass filter.

The variable low-pass filter may further set the frequency of the outputvoltage as the cut-off frequency, while the phase adjuster may retard atleast one of the output phase and the phase of the difference by π/4.

The motor control device may further include a velocity estimator forestimating velocity of the electric motor based on the vector of thestator magnetic flux estimated by the magnetic flux estimator, avelocity controller for generating a torque command so that theestimated velocity is in agreement with the velocity command, and anoutputter for outputting the velocity command when the velocity of theelectric motor is less than a predetermined first velocity, andoutputting the estimated velocity when the velocity of the electricmotor is greater than a predetermined second velocity that is greaterthan the first velocity. The variable low-pass filter may set afrequency according to the output of the outputter as the cut-offfrequency.

The outputter may sum the velocity command and the estimated velocitywith weights when the velocity of the electric motor is greater than thefirst velocity and smaller than the second velocity, and output theadded result, the weight of the estimated velocity being greater thanthe weight of the velocity command according to an increase in thevelocity of the electric motor.

The magnetic flux estimator may include a fixed low-pass filter forapplying a low-pass filter to the difference at a fixed cut-offfrequency, and a compensator for compensating based on an output of thefixed low-pass filter, the estimated value of the vector of the statormagnetic flux based on an output of the phase adjuster.

The motor control device may further include a current distributor forcalculating based on a torque command, a component that contributes to amechanical output of the electric motor as a δ-axis current command anda component that does not contribute to the mechanical output as aγ-axis current command, a current detector for detecting current flowinginto the electric motor, a converter for converting the detected currentof the current detector into δ-axis current and γ-axis current based onthe phase of the stator magnetic flux estimated by the phase estimator,and a current controller for generating a δ-axis voltage command and aγ-axis voltage command as the voltage commands so that a differencebetween the δ-axis current command and the δ-axis current and adifference between the γ-axis current command and the γ-axis currentbecome zero, respectively. Further, the phase estimator may estimate thephase of the stator magnetic flux so that a δ-axis component of thevector of the stator magnetic flux estimated by the magnetic fluxestimator becomes zero.

The motor control device may further include a converter for convertingthe detected current of the current detector into an α-axis componentand a β-axis component in a stationary coordinate system, and aconverter for converting the voltage command into an α-axis componentand a β-axis component in the stationary coordinate system. The magneticflux estimator may estimate the vector of the stator magnetic flux basedon the coil resistance, the α-axis component and the β-axis component ofthe detected current, and the α-axis component and the β-axis componentof the voltage command.

According to another mode of the disclosed embodiment, a magnetic fluxestimating device of an electric motor is provided. The magnetic fluxestimating device includes a variable low-pass filter for applying alow-pass filter to a difference between an applied voltage to theelectric motor and a voltage drop caused by a coil resistance of theelectric motor at a cut-off frequency according to a frequency of theapplied voltage, and a phase adjuster for retarding at least one of anoutput phase of the variable low-pass filter and a phase of thedifference before inputted into the variable low-pass filter.

According to still another mode of the disclosed embodiment, a method ofestimating a magnetic flux of an electric motor is provided. The methodof estimating the magnetic flux includes applying a low-pass filter to adifference between an applied voltage to the electric motor and avoltage drop caused by a coil resistance of the electric motor at acut-off frequency according to a frequency of the applied voltage, andretarding at least one of a phase of the difference after the low-passfilter is applied and a phase of the difference before the low-passfilter is applied.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is illustrated by way of example and not by wayof limitation in the figures of the accompanying drawings, in which thelike reference numerals indicate like elements and in which:

FIG. 1 is a view illustrating an example configuration of a motorcontrol device according to one embodiment;

FIG. 2 is a view illustrating an example configuration of aphase/velocity estimator;

FIG. 3 is a view illustrating an example configuration of a currentdistributor;

FIG. 4 is a view illustrating an example configuration of an optimalphase estimator;

FIG. 5 is a view illustrating an example configuration of a magneticflux estimator;

FIG. 6 illustrates graphs indicating characteristics of a variablelow-pass filter when the cut-off frequency is 1 Hz;

FIG. 7 is a graph illustrating a relation between a velocity command anda phase adjustment amount;

FIG. 8 is a graph illustrating one example of a relation between thevelocity command and an output value;

FIG. 9 is a view illustrating another example of the configuration ofthe magnetic flux estimator;

FIG. 10 is a view illustrating still another example of theconfiguration of the magnetic flux estimator;

FIG. 11 is a graph illustrating one example of a relation between thevelocity command and an output value of a regulator; and

FIG. 12 is a flowchart illustrating an example flow of controlprocessing of the magnetic flux estimator.

DETAILED DESCRIPTION

Hereinafter, one embodiment of a motor control device, and a method anddevice for estimating a magnetic flux of an electric motor according tothe present disclosure is described in detail with reference to theaccompanying drawings. Note that the present disclosure is not limitedby the embodiment described below.

1. Motor Control Device

FIG. 1 is a view illustrating an example configuration of a motorcontrol device 1 according to one embodiment of the present disclosure.As illustrated in FIG. 1, the control device 1 includes a powerconverter 10, a current detector 11, and a controller 12.

The control device 1 converts direct current (DC) voltage supplied froman external DC power source 2 by a known pulse width modulation (PWM)control into three-phase alternating current (AC) voltages v_(U), v_(V)and v_(W) at desired frequency and voltage, and outputs them to anexternal electric motor 3. The electric motor 3 may be a permanentmagnet synchronous motor (PMSM), a synchronous reluctance motor (SynRM),or an induction motor (IM), for example.

The power converter 10 includes a three-phase inverter circuit and agate drive circuit, and is connected between the DC power source 2 andthe electric motor 3, for example. The three-phase inverter circuit iscomprised of six switching elements which are bridge-connected withthree phases, for example. The gate drive circuit is configured toamplify a PWM signal outputted from the controller 12, and input theamplified signal into gates of the switching elements, for example.Thus, the switching elements which constitute the three-phase invertercircuit are turned on/off based on the PWM signals of the controller 12.Note that the power converter 10 may also be a three-phase invertercircuit equal to or more than three level, or a matrix converter.

The DC power source 2 may also be configured to convert AC voltage intoDC voltage and output the DC voltage (e.g., a combination of a rectifiercircuit with diodes and a smoothing capacitor for smoothing the DCoutput voltage). In this case, an AC power source is connected to theinputs of the rectifier circuit.

The current detector 11 detects currents which flow between the powerconverter 10 and the electric motor 3. Particularly, the currentdetector 11 detects instantaneous values i_(U), i_(V) and i_(W) ofcurrent which flows between the power converter 10 and U-, V- andW-phases of the electric motor 3, respectively (hereinafter and in thedrawings, referred to as “the output currents i_(U), i_(V) and i_(W)”).Note that the current detector 11 detects currents using Hall deviceswhich are magnetoelectric transducers, for example.

The controller 12 generates PWM signals based on the output currentsi_(U), i_(V) and i_(W) detected by the current detector 11, and avelocity command ω*, and outputs them to the power converter 10. Thepower converter 10 outputs, based on the PWM signals from the controller12, three-phase AC voltages v_(U), v_(V) and v_(W) (hereinafter and inthe drawings, may be referred to as “the output voltage v_(UVW)”) to theU-, V- and W-phases of the electric motor 3.

The controller 12 uses, as control axes, a γδ coordinate system in whicha component which contributes to a mechanical output of the electricmotor 3 is used as a δ-axis component and a component which does notcontribute to the mechanical output is used as a γ-axis component, andperforms a vector control while dividing the current component into theδ-axis component and the γ-axis component. Below, a configuration of thecontroller 12 is described in detail.

2. Controller 12

As illustrated in FIG. 1, the controller 12 includes a fixed coordinateconverter 20, a rotary coordinate converter 21, a magnetic fluxestimator 22, a phase/velocity estimator 23, subtractors 24, 27, 31 and32, a velocity controller 25, a current distributor 26, a currentcontroller 28, a non-interacting controller 29, an adder 30, a PWMcontroller 33, a voltage error compensator 34, and an optimal phaseestimator 35.

The fixed coordinate converter 20 converts the output currents i_(U),i_(V) and i_(W) into αβ-axes components of two axes which intersectperpendicularly to each other in a stationary coordinate system (fixedcoordinate system) to calculate a current vector i_(αβ) in an αβcoordinate system which uses α-axis current i_(α) and γ-axis currenti_(β) as its vector components. The αβ coordinate system is arectangular coordinate system set up on a stator 3 a of the electricmotor 3, and is also referred to as “the stator coordinate system.” Thefixed coordinate converter 20 outputs the current vector i_(αβ) to therotary coordinate converter 21.

The rotary coordinate converter 21 converts the current vector i_(αβ) inthe αβ coordinate system into a current vector i_(γδ) in the γδcoordinate system based on an estimated phase θ^ outputted from thephase/velocity estimator 23. The current vector i_(γδ) is a currentvector having vector components of a δ-axis component i_(δ) whichcontributes to the mechanical output of the electric motor 3, and aγ-axis component i_(γ) which does not contribute to the mechanicaloutput of the electric motor 3. Note that the estimated phase θ^ is aphase of a vector φ_(γδ) of a stator magnetic flux φ_(S) in the γδcoordinate system, and the stator magnetic flux φ_(S) is a magnetic fluxof the stator 3 a of the electric motor 3.

The magnetic flux estimator 22 estimates a vector φ_(γδ) of the statormagnetic flux φ_(S) in the γδ coordinate system based on a differencevdff between the output voltage v_(UVW) from the power converter 10 tothe electric motor 3, and a voltage drop caused by a coil resistanceR_(S) of the electric motor 3. The magnetic flux estimator 22 includes avariable low-pass filter and a phase adjuster, as will be describedlater, and, thereby, the magnetic flux estimator 22 can detect thestator magnetic flux φ_(S) with sufficient accuracy. Hereinafter, anestimated value of the vector φ_(γδ) of the stator magnetic flux φ_(S)in the γδ coordinate system is referred to as “the estimated statormagnetic flux φ_(γδ)^.”

The phase/velocity estimator 23 (one example of the phase estimator inthe claims) estimates a velocity ω of a rotor 3 b of the electric motor3, and a phase θ of the stator magnetic flux φ_(S), based on theestimated stator magnetic flux φ_(γδ)^. Hereinafter, the estimated valueof the velocity ω of the rotor 3 b is referred to as “the estimatedvelocity ω^.”

FIG. 2 is a view illustrating an example configuration of thephase/velocity estimator 23. As illustrated in FIG. 2, thephase/velocity estimator 23 includes an arctangent calculator 40, asubtractor 41, a proportional integral (PI) controller 42, and anintegrator 43. The arctangent calculator 40 calculates a phase error Δθ^based on the estimated stator magnetic flux φ_(γδ)^ using the followingformula (1), for example.

$\begin{matrix}{{\Delta\theta}^{\bigwedge} = {a\;{\tan\left( \frac{{\phi\delta}^{\bigwedge}}{{\phi\gamma}^{\bigwedge}} \right)}}} & (1)\end{matrix}$

The subtractor 41 subtracts a predetermined value (e.g., zero) from thephase error Δθ^. The PI controller 42 calculates the estimated velocityω^ by performing the PI control so that the subtraction result of thesubtractor 41 becomes zero. The integrator 43 calculates the estimatedphase θ^ by integrating the estimated velocities ω^ with respect totime. Note that the phase/velocity estimator 23 is not limited to theconfiguration illustrated in FIG. 2. For example, the phase/velocityestimator 23 may be provided with a PID controller that performs aproportional integral and differential (PID) control, instead of the PIcontroller 42.

Returning to FIG. 1, the controller 12 will further be described. Thesubtractor 24 subtracts the estimated velocity ω^ from the velocitycommand ω*, and outputs it to the velocity controller 25. The velocitycontroller 25 generates a torque command T* so that a difference betweenthe velocity command ω* and the estimated velocity ω^ becomes zero. Forexample, the velocity controller 25 has a PI controller, and performs aPI control with respect to the difference between the velocity commandω* and the estimated velocity ω^, to generate the torque command T*.

The current distributor 26 calculates a current command vector i_(γδ)*having a δ-axis current command i_(δ)* and a γ-axis current commandi_(γ)* as vector components, based on the torque command T* and a loadangle compensation value Δρ*. This configuration of the currentdistributor 26 is disclosed in JP2012-228083A, for example.

FIG. 3 is a view illustrating an example configuration of the currentdistributor 26. As illustrated in FIG. 3, the current distributor 26includes a command converter 44, an absolute value calculator 45, aT-to-p converter 46, a search signal generator 47, adders 48 and 49, anda distributor 50. Note that the current distributor 26 is not limited tothe configuration illustrated in FIG. 3.

The command converter 44 converts the torque command T* to a currentcommand Im** by multiplying the torque command T* by a conversion gainK. The conversion gain K is calculated based on a ratio of the ratedcurrent of the electric motor 3 to the rated torque of the electricmotor 3, for example. The absolute value calculator 45 calculates acurrent command Im* by calculating an absolute value of the currentcommand Im**.

The T-to-p converter 46 stores a conversion table where the torquecommand T* is associated with a command load angle ρ*, and converts thetorque command T* into a command load angle ρ_(ini)* by referring to theconversion table. For example, if the electric motor 3 is a synchronousreluctance motor, the command load angle ρ_(ini)* is inverted in signbetween power running and regeneration, and the magnitude is π/4. Thecommand load angle ρ_(ini)* becomes zero in a no-load condition.

The search signal generator 47 outputs a search signal phase ρ_(h)*. Thesearch signal phase ρ_(h)* is a phase of a minute search signal Sh athigh frequency. Here, if a phase shift of the search signal Sh isA_(mag) and a frequency of the search signal Sh is ω_(h), the searchsignal phase ρ_(h)* can be expressed by the following formula (2), forexample.ρ_(h) *=A _(mag) sin ω_(h) t   (2)

The adder 48 calculates a phase ρ_(avg)* by adding the search signalphase ρ_(h)* to the command load angle ρ_(ini)*. The adder 49 adds theload angle compensation value Δρ* to the phase ρ_(avg)* to calculate thefinal command load angle ρ*.

The distributor 50 calculates the current command vector i_(γδ)* basedon the current command Im* and the command load angle ρ*. Thedistributor 50 calculates the current command vector i_(γδ)* having theγ-axis current command i_(γ)* and the δ-axis current command i_(δ)* asthe vector components by the following formulas (3) and (4), forexample.i _(γ) *=I _(m)*·cos ρ*   (3)i _(δ) *=I _(m)*·sin ρ*   (4)

Returning to FIG. 1, the controller 12 is further described. Thesubtractor 27 subtracts the γ-axis current i_(γ) from the γ-axis currentcommand i_(γ)*, and subtracts the δ-axis current i_(δ) from the δ-axiscurrent command i_(γ)*. For example, the current controller 28calculates a γ-axis voltage command v_(γ)* by carrying out the PIcontrol so that a deviation between the γ-axis current command i_(γ)*and the γ-axis current i_(γ) becomes zero, and also calculates a δ-axisvoltage command v_(δ)* by carrying out the PI control so that adeviation between the δ-axis current command i_(δ)* and the δ-axiscurrent i_(δ) becomes zero.

The non-interacting controller 29 generates a γ-axis compensationvoltage v_(γff) and a δ-axis compensation voltage v_(δff) based on theγ-axis current command i_(γ)*, the δ-axis current command i_(δ)*, andthe estimated velocity ω^ in order to cancel a mutual interaction due toinductance between γ-axis and δ-axis, and then outputs the γ-axiscompensation voltage v_(γff) and the δ-axis compensation voltagev_(δff). The non-interacting controller 29 stores a formula or a table,and calculates the γ-axis compensation voltage v_(γff) and the δ-axiscompensation voltage v_(δff) based on the formula or table.

The adder 30 adds the γ-axis compensation voltage v_(γff) to the γ-axisvoltage command v_(γ)*, and adds the δ-axis compensation voltage v_(δff)to the δ-axis voltage command v_(δ)*. The subtractor 31 generates aγ-axis voltage command v_(γ)** by subtracting a voltage error Δvγ fromthe added result of the γ-axis voltage command v_(γ)* and the γ-axiscompensation voltage v_(γff). Further, the subtractor 31 generates aδ-axis voltage command v_(γ)** by subtracting a voltage error Δvδ fromthe added result of the δ-axis voltage command v_(δ)* and the δ-axiscompensation voltage v_(δff). The subtractor 32 subtracts the γ-axiscompensation voltage v_(γff) from the γ-axis voltage command v_(γ)**,and subtracts the δ-axis compensation voltage v_(γff) from the δ-axisvoltage command v_(δ)**.

The PWM controller 33 converts the γ-axis voltage command v_(γ)** andthe δ-axis voltage command v_(δ)** into three-phase voltage commandsv_(U)*, v_(V)* and v_(W)* based on the estimated phase θ^. The PWMcontroller 33 generates PWM signals based on the voltage commandsv_(U)*, v_(V)* and v_(W)*, and then outputs them to the power converter10. Thus, the output voltage v_(UVW) corresponding to the voltagecommands v_(U)*, v_(V)* and v_(W)* is applied from the power converter10 to the phases U, V and W of the electric motor 3.

Further, the PWM controller 33 converts the γ-axis voltage commandv_(γ)** and the δ-axis voltage command v_(δ)** into an α-axis voltagecommand v_(α)* and a β-axis voltage command v_(β)* in the αβ coordinatesystem based on the estimated phase θ^.

The voltage error compensator 34 generates a voltage error Δv in orderto reduce the unstableness of the current control responses. Forexample, the voltage error compensator 34 calculates the voltage errorΔv so that the estimated current vector calculated by using an electricmodel of the electric motor 3 becomes in agreement with an error currentvector of the current command vector i_(γδ)*. This configuration of thevoltage error compensator 34 is disclosed in JP2012-228083A, forexample.

The optimal phase estimator 35 calculates the load angle compensationvalue Δρ* for reducing the phase error due to a resistance error, forexample. This configuration of the optimal phase estimator 35 isdisclosed in JP2012-228083A, for example.

FIG. 4 is a view illustrating an example configuration of the optimalphase estimator 35. As illustrated in FIG. 4, the optimal phaseestimator 35 includes an effective power calculator 51, a band-passfilter (BPF) 52, a multiplier 53, a low-pass filter (LPF) 54, asubtractor 55, and a PI controller 56. The effective power calculator 51calculates an effective power Pe by using the following formula (5)based on the α-axis voltage command v_(α)*, the β-axis voltage commandv_(β)*, the α-axis current i_(α), and the β-axis current i_(β).P _(e) =v _(α) *·i _(α) +v _(β) *·i _(β)  (5)

The band-pass filter 52 extracts a frequency component Ph same as thefrequency of the search signal Sh from the effective power Pe, and themultiplier 53 then multiplies the component Ph by a sine wave sinω_(h)t. The low-pass filter 54 applies a low-pass filter to themultiplied result of the multiplier 53 to extract a fluctuationcomponent ΔPo that depends on a variation of a mechanical output Po. Thesubtractor 55 subtracts zero from the fluctuation component ΔPo, and thePI controller 56 generates the phase compensation angle Δρ* so that thefluctuation component ΔPo becomes zero.

Note that, the control device 1 illustrated in FIG. 1 is provided withthe voltage error compensator 34 and the optimal phase estimator 35.However, the control device 1 may not be provided with the voltage errorcompensator 34 and/or the optimal phase estimator 35. Additionally oralternatively, the search signal Sh may not be used. Hereinafter, anexample configuration of the magnetic flux estimator 22 is described indetail.

3. Magnetic Flux Estimator 22

The magnetic flux estimator 22 applies a low-pass filter to a differencebetween the output voltage v_(UVW) and the voltage drop caused by thecoil resistance R_(S) of the electric motor 3. Thereby, when an offseterror exists in the current detector 11, an offset in the estimatedstator magnetic flux φ_(S)^ is reduced, and the estimation accuracy ofthe stator magnetic flux φ_(S) is improved.

FIG. 5 is a view illustrating an example configuration of the magneticflux estimator 22. As illustrated in FIG. 5, the magnetic flux estimator22 includes a frequency outputter 60, a multiplier 61, a subtractor 62,a limiter 63, a pseudo-LPF 64, an amplifier 65, and a phase adjuster 66.Note that the amplifier 65 may be provided downstream of the phaseadjuster 66, instead of upstream of the phase adjuster 66.

The frequency outputter 60 determines a cut-off frequency ω_(C) to beused by the pseudo-LPF 64. This frequency outputter 60 outputs afrequency ω_(C)1 according to a frequency ω_(O) of the output voltagev_(UVW), i.e., a drive frequency of the electric motor 3 (hereinafter,referred to as “the drive frequency ω_(O)), based on the estimatedvelocity ω^ and the command velocity ω*. Note that the configuration ofthe frequency outputter 60 will be described in detail later.

The multiplier 61 multiplies the detected current vector i_(αβ) by thecoil resistance R_(S) of the stator 3 a. The subtractor 62 subtracts themultiplied result of the multiplier 61 from the voltage command vectorv_(αβ)*. Thereby, differences v_(αdf) and v_(βdf) between the outputvoltage v_(UVW) and the voltage drop caused by the coil resistance R_(S)of the electric motor 3 is calculated on the αβ-axes. Here, thedifferences v_(αdf) and v_(βdf) can be expressed by the followingformulas (6) and (7), for example.v _(αdf) =v _(α) *−R _(S) ·i _(α)  (6)V _(βdf) =v _(β) *−R _(S) ·i _(β)  (7)

The limiter 63 limits the frequency ω_(C)1 outputted from the frequencyoutputter 60 so that the frequency ω_(C)1 does not exceed apredetermined upper limit (e.g., 100 Hz). Note that the magnetic fluxestimator 22 may not be provided with the limiter 63.

The pseudo-LPF 64 includes a variable low-pass filter 70 and a divider71. The variable low-pass filter 70 is a primary low-pass filter thatcan change the cut-off frequency ω_(C), for example. The variablelow-pass filter 70 uses the frequency ω_(C)1 outputted from the limiter63 as the cut-off frequency ω_(C), and applies a low-pass filter to thedifferences v_(αdf) and v_(βdf). The divider 71 divides the output ofthe variable low-pass filter 70 by the frequency ω_(C)1.

FIG. 6 illustrates graphs illustrating characteristics of the variablelow-pass filter 70 when the cut-off frequency ω_(C) is 1 Hz. Asillustrated in FIG. 6, when a signal at the same frequency as thecut-off frequency ω_(C) is inputted, the variable low-pass filter 70outputs a signal that is retarded in phase by 45 degrees, and reduced inamplitude by 1/√2 times, with respect to the input.

An input frequency ω_(i) into the variable low-pass filter 70 is thefrequency of the differences v_(αdf) and v_(βdf), and is the same as thedrive frequency ω_(O). Therefore, when the cut-off frequency ω_(C) isset at the same frequency as the drive frequency ω_(O), the output ofthe variable low-pass filter 70 is retarded in phase by 45 degrees andis 1/√2 times in amplitude, with respect to the differences v_(αdf) andv_(βdf).

Here, a case where integration is applied to the differences v_(αdf) andv_(βdf) is considered. When the differences v_(αdf) and v_(βdf) areinputted into the integrator, an output of the integrator is retarded inphase by 90 degrees and 1/ω_(O) times in amplitude, with respect to thedifferences v_(αdf) and v_(βdf). Therefore, compared with the output ofthe integrator, the output of the variable low-pass filter 70 isadvanced in phase by 45 degrees and ω_(O)/√2 times in amplitude.

Thus, the magnetic flux estimator 22 is provided with the divider 71 andthe amplifier 65 in order to adjust the gain, and is provided with thephase adjuster 66 in order to adjust the phase.

The divider 71 divides the output of the variable low-pass filter 70 bythe frequency 107 _(C)1. The frequency ω_(C)1 is the same as the drivefrequency ω_(O). Thereby, the output of the pseudo-LPF 64 is 1/√2 timesin amplitude, compared with the output of the integrator. The amplifier65 multiplies the output of the pseudo-LPF 64 by √2.

The magnetic flux estimator 22 calculates an estimated value φ_(αβ)^(hereinafter and in the drawings, referred to as “the estimated statormagnetic flux φ_(αβ)^”) of the vector component φ_(αβ) of the statormagnetic flux φ_(S) in the αβ-axes coordinate system by adjusting thegain according to the output of the variable low-pass filter 70 asdescribed above. Note that the estimated stator magnetic flux φ_(αβ)^ isadvanced in phase by 45 degrees with respect to the vector componentφ_(αβ) of the stator magnetic flux φ_(S).

The phase adjuster 66 converts the components in the αβ coordinatesystem into components in the γδ coordinate system, while adjusting theestimated stator magnetic flux φ_(αβ)^ so that the estimated statormagnetic flux φ_(αβ)^ is retarded by 45 degrees. The phase adjuster 66includes an adjuster 73, an adder 74, and a coordinate converter 75.

The adjuster 73 outputs a phase adjustment amount Δθ according to thevelocity command ω*. FIG. 7 is a graph illustrating a relation betweenthe velocity command ω* and the phase adjustment amount Δθ. The adjuster73 stores a table or a formula having the relation illustrated in FIG.7, and outputs a phase adjustment amount Δθ according to the velocitycommand ω* based on the table or formula.

For example, the adjuster 73 sets the phase adjustment amount Δθ to π/4,if the velocity command ω* is 0.25% or greater of a rated velocityω_(rate) (e.g., 100 Hz) of the electric motor 3 at the time of powerrunning. Further, for example, the adjuster 73 sets the phase adjustmentamount Δθ to −π/4, if the velocity command ω* is −0.25% or less of therated velocity ω_(rate) at the time of regeneration. Further, forexample, the adjuster 73 outputs the phase adjustment amount Δθaccording to the magnitude of the velocity command ω*, if the velocitycommand ω* is less than 0.25% of the rated velocity ω_(rate).

The adder 74 adds the phase adjustment amount Δθ to the estimated phaseθ^ to calculate an adjustment phase θaj. The coordinate converter 75converts the estimated stator magnetic flux φ_(αβ)^ in the αβ coordinatesystem into a vector in the γδ-axes rotary coordinate system based onthe adjustment phase θaj. Thus, the estimated stator magnetic fluxφ_(αβ)^ is adjusted to be retarded by 45 degrees, and the components inthe αβ coordinate system are converted into the components in the γδcoordinate system.

As described above, the magnetic flux estimator 22 can obtain theestimated stator magnetic flux φ_(γδ)^ similar to the estimated statormagnetic flux φ_(γδ)^ which is obtained by integrating the differencesv_(αdf) and v_(βdf) with respect to time by the integrator, andconverting the integrated result into the components in the γδcoordinate system. In addition, since the integration is not performed,even if there is an offset error in the current detector 11, fluctuationat a frequency of multiplying the drive frequency ω_(O) by 1 is reducedto be included in the estimated stator magnetic flux φ_(γδ)^. Thereby,the magnetic flux estimator 22 can reduce the offset occurring in theestimated stator magnetic flux φ_(γδ)^.

The frequency outputter 60 outputs the frequency ω_(C)1 according to thedrive frequency ω_(O) based on the estimated velocity ω^ and the commandvelocity ω*. The frequency outputter 60 outputs the velocity command ω*when the velocity ω of the electric motor 3 is a predetermined firstvelocity ω1 or less, and outputs the estimated velocity ω^ when thevelocity ω is a predetermined second velocity ω2 or greater that isgreater than the first velocity ω1. Since the estimated velocity ω^ mayfluctuate when the velocity ω is small, the frequency outputter 60outputs the velocity command ω* when the velocity ω is the firstvelocity ω1 or less.

Further, when the velocity ω of the electric motor 3 is greater than thefirst velocity ω1 and smaller than the second velocity ω2, a weightedaddition is carried out for the velocity command ω* and the estimatedvelocity ω^ so that the weight of the estimated velocity ω^ becomesgreater than the weight of the velocity command ω* as the velocity ωbecomes greater, and the added result is then outputted. Thereby, theinstantaneous switching of the frequency outputter 60 from the velocitycommand ω* to the estimated velocity ω^ is reduced.

As illustrated in FIG. 5, the frequency outputter 60 includes absolutevalue calculators 80 and 87, a regulator 81, multipliers 82 and 85, asubtractor 83, a low-pass filter (LPF) 84, and an adder 86. The absolutevalue calculator 80 calculates an absolute value of the velocity commandω*.

FIG. 8 is a graph illustrating one example of a relation between thevelocity command ω* and the output values (the values of weight). In theexample illustrated in FIG. 8, 5% of the rated velocity ω_(rate) is thefirst velocity ω1, and 10% of the rated velocity ω_(rate) is the secondvelocity ω2.

As illustrated in FIG. 8, the regulator 81 outputs 1 when the velocitycommand ω* is less than 5% of the rated velocity ω_(rate), and outputs 0when the velocity command ω* is 10% or greater of the rated velocityω_(rate). Further, the regulator 81 outputs a value according to themagnitude of the velocity command ω* when the velocity command ω* isgreater than 5% of the rated velocity ω_(rate) and less than 10% of therated velocity curate.

The multiplier 82 multiplies the output of the regulator 81 by thevelocity command ω*. The subtractor 83 subtracts the output of theregulator 81 from 1. The low-pass filter 84 removes noise components ofthe estimated velocity ω^. The multiplier 85 multiplies the output ofthe subtractor 83 by the output of the low-pass filter 84.

The adder 86 adds the multiplied result of the multiplier 82 to themultiplied result of the multiplier 85. The absolute value calculator 87calculates an absolute value of the added result of the adder 86.

Thus, the frequency outputter 60 outputs as the frequency ω_(C)1, afrequency that is same as the drive frequency ω_(O), based on theestimated velocity ω^ and the command velocity ω*. Thereby, since thefrequency same as the drive frequency ω_(O) is set to the pseudo-LPF 64as the cut-off frequency ω_(C), the output of the pseudo-LPF 64 can beretarded by 45 degrees compared with the output of the integrator.

The magnetic flux estimator 22 is not limited to the configurationillustrated in FIG. 5. FIG. 9 is a view illustrating an exampleconfiguration of another magnetic flux estimator 22A. The magnetic fluxestimator 22A illustrated in FIG. 9 calculates the estimated statormagnetic flux φ_(γδ)^ from which fluctuation at a frequency obtained bymultiplying the drive frequency ω_(O) by 6 (hereinafter, referred to as“6f”) is reduced, in addition to the reduction of the fluctuation at thefrequency obtained by multiplying the drive frequency ω_(O) by 1(hereinafter, referred to as “1f”).

The magnetic flux estimator 22A illustrated in FIG. 9 is furtherprovided with a limiter 63A, low-pass filters (LPF) 70A and 76, adivider 71A, a coordinate converter 75A, a high-pass filter (HPF) 77,and an adder 78, in addition to the configuration of the magnetic fluxestimator 22 illustrated in FIG. 5.

The limiter 63A limits a fixed frequency ω_(Cfix) (e.g., 1 Hz) so thatthe fixed frequency ω_(Cfix) does not exceed a predetermined upper limit(e.g., 100 Hz). Note that the magnetic flux estimator 22A may not beprovided with the limiter 63A.

The low-pass filter 70A (one example of the fixed low-pass filter in theclaims) uses the fixed frequency ω_(Cfix) as the cut-off frequency ω_(C)to apply a low-pass filter to the differences v_(αdf) and v_(βdf). Thedivider 71A divides the output of the low-pass filter 70A by the fixedfrequency ω_(Cfix) to calculate the estimated stator magnetic fluxφ_(αβ)^.

The coordinate converter 75A converts the estimated stator magnetic fluxφ_(αβ)^ in the αβ coordinate system into a vector in the γδ-axes rotarycoordinate system based on the estimated phase θ^ to calculate theestimated stator magnetic flux φ_(γδ)^. The output of the coordinateconverter 75A is inputted into the high-pass filter 77. The high-passfilter 77 removes a component equal to or below the drive frequencyω_(O) from the estimated stator magnetic flux φ_(γδ)^.

The output of the coordinate converter 75 of the phase adjuster 66 isalso inputted into the low-pass filter 76. The low-pass filter 76removes a frequency component higher than the drive frequency coo. Theadder 78 (one example of the compensator in the claims) adds the outputof the low-pass filter 76 to the output of the high-pass filter 77 tocalculate the estimated stator magnetic flux φ_(γδ)^.

Thus, the magnetic flux estimator 22A illustrated in FIG. 9 compensatesbased on the output of the low-pass filter 70A which is a fixed low-passfilter, the estimated stator magnetic flux φ_(γδ)^ on the bases of theoutput of the phase adjuster 66. Thereby, the estimated stator magneticflux φ_(γδ)^ from which the 6f fluctuation component is reduced can becalculated, in addition to the 1f fluctuation component. Note that the6f fluctuation component originates, for example, in a deadtime ofswitching of the power converter 10.

FIG. 10 is a view illustrating a configuration of still another magneticflux estimator 22B. The magnetic flux estimator 22B illustrated in FIG.10 is further provided with a fluctuation reducer 88 and an adder 89, inaddition to the configuration of the magnetic flux estimator 22illustrated in FIG. 5.

The fluctuation reducer 88 generates a compensation phase θ_(COMP) forreducing the 1f fluctuation component and the 6f fluctuation component.The adder 89 adds the compensation phase θ_(COMP) to the estimated phaseθ^, and then outputs it to the phase adjuster 66. The phase adjuster 66adds the phase adjustment amount Δθ to the estimated phase θ^ to whichthe compensation phase θ_(COMP) is added to calculate the adjustmentphase θaj. Thereby, the estimated stator magnetic flux φ_(γδ)^ fromwhich the 1f fluctuation component is further reduced and the 6ffluctuation component is reduced can be calculated.

The fluctuation reducer 88 includes a divider 90, an absolute valuecalculator 91, a limiter 92, amplifiers 93, 95 and 97, band-pass filters(BPF) 94 and 96, an adder 98, an adjuster 99, and a multiplier 100, forexample.

The divider 90 calculates a phase error Δθ1 by dividing the δ-axisestimated stator magnetic flux φ_(δ)^ by the γ-axis estimated statormagnetic flux φ_(γ)^. The absolute value calculator 91 calculates anabsolute value of the command velocity ω*. The limiter 92 limits thevelocity command ω* so that the velocity command ω* does not exceed apredetermined upper limit (e.g., 100 Hz). Note that the magnetic fluxestimator 22B may not be provided with the limiter 92.

The amplifier 93 multiplies the absolute value of the command velocityω* by 6, and sets the frequency that is six times of the commandvelocity ω* as a center frequency fo of the band-pass filter 96. Theband-pass filter 96 extracts the 6f component from the phase errors Δθ1.Further, the absolute value of the command velocity ω* is inputted intothe band-pass filter 94, and the absolute value of the command velocityω* is set as the center frequency fo of the band-pass filter 94. Theband-pass filter 94 extracts the 1f component from the phase error Δθ1.

The amplifier 95 multiplies the output of the band-pass filter 94 by k1,and the amplifier 97 multiplies the output of the band-pass filter 96 byk2. The adder 98 adds the result of multiplying the 1f component of thephase error Δθ1 by k1 to the result of multiplying the 6f component ofthe phase error Δθ1 by k2. Note that since the 1f and 6f fluctuationcomponents change depending on a proportional gain of the PI controller42 (refer to FIG. 2), the gains k1 and k2 are set as gains, for example,according to the proportional gain of the PI controller 42 (e.g., 1.5times of the proportional gain of the PI controller 42).

The adjuster 99 outputs a value according to the velocity command ω*.FIG. 11 is a graph illustrating one example of a relation between thevelocity command ω* and the output value of the adjuster 99. In theexample illustrated in FIG. 11, the adjuster 99 outputs 1 when thevelocity command ω* is 1% or less of the rated velocity ω_(rate), andoutputs 0 when the velocity command ω* is 10% or greater of the ratedvelocity ω_(rate). Further, the adjuster 99 outputs a value according tothe magnitude of the velocity command ω* when the velocity command ω* isgreater than 1% and less than 10% of the rated velocity ω_(rate).

Since the 1f and 6f fluctuation components appear notably at low motorrotational speed, the magnetic flux estimator 22 illustrated in FIG. 11switches valid/invalid of the fluctuation reducer 88 within a range of1% to 10%. However, the fluctuation reducer 88 is not limited to theconfiguration illustrated in FIGS. 10 and 11.

4. Control Flow of Magnetic Flux Estimator 22

FIG. 12 is a flowchart illustrating an example flow of controlprocessing of the magnetic flux estimators 22, 22A and 22B. Note that inthis section, the magnetic flux estimators 22, 22A and 22B describedabove are comprehensively referred to as “the magnetic flux estimator22,” unless otherwise particularly described. The magnetic fluxestimator 22 repeatedly executes the magnetic flux estimation processingillustrated in FIG. 12 at a predetermined period.

As illustrated in FIG. 12, the magnetic flux estimator 22 sets thefrequency ω_(C1) according to the drive frequency ω_(O) of the electricmotor 3 as the cut-off frequency we of the variable low-pass filter 70(step S10).

The magnetic flux estimator 22 calculates the difference between theoutput voltage v_(UVW) and the voltage drop caused by the coilresistance R_(S) of the electric motor 3 (step S11). For example, themagnetic flux estimator 22 calculates the differences v_(αdf) andv_(βdf) between the output voltage v_(UVW) and the voltage drop causedby the coil resistance R_(S) by subtracting the result of multiplyingthe detected current vector i_(αβ) by the value of the coil resistanceR_(S) of the stator 3 a from the voltage command vector v_(αβ)*.

The magnetic flux estimator 22 applies the low-pass filter by thevariable low-pass filter 70 to the difference between the output voltagev_(UVW) and the voltage drop caused by the coil resistance R_(S) of theelectric motor 3 (step S12). For example, the magnetic flux estimator 22applies the low-pass filter to the differences v_(αdf) and v_(62 df) bythe variable low-pass filter 70.

The magnetic flux estimator 22 obtains the vector of the stator magneticflux φ_(S) by performing a gain adjustment and a phase adjustment to theresult of the low-pass filtering by the variable low-pass filter 70(step S13). For example, when a signal at a frequency same as thecut-off frequency ω_(C) is inputted, the magnetic flux estimator 22obtains the estimated stator magnetic flux φ_(γδ)^ by multiplying theoutput of the variable low-pass filter 70 by √2/ω_(O), and retarding thephase by 45 degrees.

Note that the magnetic flux estimator 22 described above uses thecut-off frequency ω_(C) of the variable low-pass filter 70 that is thesame frequency as the drive frequency ω_(O); however, the cut-offfrequency ω_(C) may be other frequencies according to the drivefrequency ω_(O). For example, the magnetic flux estimator 22 may beconfigured to change the cut-off frequency ω_(C) according to the drivefrequency ω_(O) so that the retard in the phase with respect to theoutput of the integrator becomes a predetermined value other than π/4(e.g., π/6). In this case, the amplifier 65 of the magnetic fluxestimator 22 amplifies the output of the pseudo-LPF 64 by a gainaccording to the retard in the phase with respect to the output of theintegrator.

For example, the magnetic flux estimator 22 may store the frequencyω_(C)1 according to the drive frequency ω_(O) and the amount of gainadjustment in a table form, and adjust the cut-off frequency ω_(C) ofthe variable low-pass filter 70 and the gain of the amplifier 65 basedon the table.

Further, the magnetic flux estimator 22 described above is configured toestimate the vector of the stator magnetic flux φ_(S) in the stationarycoordinate system (αβ coordinate system); however, the magnetic fluxestimator 22 may be configured to estimate the vector of the statormagnetic flux φ_(S) in the rotary coordinate system (γδ coordinatesystem).

Further, the magnetic flux estimator 22 may also add the voltage dropω_(O)Li (ω_(O)Li_(γ)*, ω_(O)Li_(δ)*) at an inductance L of the electricmotor 3 to the voltage command vector v_(γδ) (v_(γ)*, v_(δ)*) outputtedfrom the current controller 28, for example. By doing so, the magneticflux estimator 22 can also calculate the difference between the outputvoltage v_(UVW) and the voltage drop caused by the coil resistanceR_(S). In this case, the output of the amplifier 65 is the estimatedstator magnetic flux φ_(γδ)^.

Further, the magnetic flux estimator 22 described above is provided withthe phase adjuster 66 downstream of the pseudo-LPF 64; however, thephase adjuster 66 may be provided upstream of the pseudo-LPF 64.Further, the magnetic flux estimator 22 described above performs thephase adjustment and the coordinate conversion at the phase adjuster 66.However, the phase adjuster for adjusting the phase may be separatedfrom the coordinate converter for converting the coordinates, and inthis case, the phase adjuster, the pseudo-LPF 64, and the coordinateconverter can be arranged in this order, for example.

Further, the magnetic flux estimator 22 described above is configured toperform the gain adjustment. However, since the phase/velocity estimator23 calculates the estimated phase θ^ and the estimated velocity ω^ basedon the phase of the vector of the stator magnetic flux φ_(S), thephase/velocity estimator 23 can calculate the estimated phase θ^ and theestimated velocity ω^ based on the output of the magnetic flux estimator22 even when the magnetic flux estimator 22 does not perform the gainadjustment. In this case, the amplifier 65 may not be provided to themagnetic flux estimator 22, for example.

Note that the arrows illustrated in FIGS. 1 to 5, 9 and 10 auxiliarilyindicate flow directions of information (e.g., data and signals) andcontrols, and they are neither intended to deny other flows nor intendedto limit the directions.

The controller 12 may include one or more microcomputers and/or variouskinds of circuits having one or more Central Processing Units (CPUs),one or more Read Only Memories (ROMs), one or more Random AccessMemories (RAMs), and/or one ore more input/output ports. The CPU of themicrocomputer can achieve the controls of the components 20 to 35described above by reading and executing the program(s) stored in theROM(s).

Further, any one or some or all of the components 20 to 35 describedabove may also be constructed with hardware, such as ApplicationSpecific Integrated Circuit (ASIC) and/or Field Programmable Gate Array(FPGA).

Further effects and modifications may easily be derived by a personskilled in the art. Thus, broader aspects of the present inventionshould not be limited by the specific detailed description and therepresentative embodiments illustrated and described above. Therefore,the aspects may be variously changed without departing from thecomprehensive spirit or scope of the present invention defined by theappended claims and their equivalents.

What is claimed is:
 1. A motor control device, comprising: a powerconverter for applying output voltage according to a voltage command toan electric motor; a magnetic flux estimator for estimating a vector ofstator magnetic flux of the electric motor based on a difference betweenthe output voltage and a voltage drop caused by a coil resistance of theelectric motor; and a phase estimator for estimating a phase of thestator magnetic flux based on the vector of the stator magnetic fluxestimated by the magnetic flux estimator, wherein the magnetic fluxestimator includes: a variable low-pass filter for applying a low-passfilter to the difference at a cut-off frequency according to a frequencyof the output voltage; and a phase adjuster for retarding at least oneof an output phase of the variable low-pass filter and a phase of thedifference before inputted into the variable low-pass filter.
 2. Themotor control device of claim 1, wherein the variable low-pass filtersets the frequency of the output voltage as the cut-off frequency, whilethe phase adjuster retards at least one of the output phase and thephase of the difference by π/4.
 3. The motor control device of claim 1,further comprising: a velocity estimator for estimating velocity of theelectric motor based on the vector of the stator magnetic flux estimatedby the magnetic flux estimator; a velocity controller for generating atorque command so that the estimated velocity is in agreement with avelocity command; and an outputter for outputting the velocity commandwhen the velocity of the electric motor is less than a predeterminedfirst velocity, and outputting the estimated velocity when the velocityof the electric motor is greater than a predetermined second velocitythat is greater than the first velocity, wherein the variable low-passfilter sets a frequency according to the output of the outputter as thecut-off frequency.
 4. The motor control device of claim 3, wherein theoutputter sums the velocity command and the estimated velocity withweights when the velocity of the electric motor is greater than thefirst velocity and smaller than the second velocity, and outputs theadded result, the weight of the estimated velocity being greater thanthe weight of the velocity command according to an increase in thevelocity of the electric motor.
 5. The motor control device of claim 1,wherein the magnetic flux estimator includes: a fixed low-pass filterfor applying a low-pass filter to the difference at a fixed cut-offfrequency; and a compensator for compensating based on an output of thefixed low-pass filter, the estimated value of the vector of the statormagnetic flux based on an output of the phase adjuster.
 6. The motorcontrol device of claim 1, further comprising: a current distributor forcalculating based on a torque command, a component that contributes to amechanical output of the electric motor as a δ-axis current command anda component that does not contribute to the mechanical output as aγ-axis current command; a current detector for detecting current flowinginto the electric motor; a converter for converting the detected currentof the current detector into δ-axis current and γ-axis current based onthe phase of the stator magnetic flux estimated by the phase estimator;and a current controller for generating a δ-axis voltage command and aγ-axis voltage command as the voltage commands so that a differencebetween the δ-axis current command and the δ-axis current and adifference between the γ-axis current command and the γ-axis currentbecome zero, respectively, wherein the phase estimator estimates thephase of the stator magnetic flux so that a δ-axis component of thevector of the stator magnetic flux estimated by the magnetic fluxestimator becomes zero.
 7. The motor control device of claim 6, furthercomprising: a converter for converting the detected current of thecurrent detector into an α-axis component and a γ-axis component in astationary coordinate system; and a converter for converting the voltagecommand into an α-axis component and a β-axis component in thestationary coordinate system, wherein the magnetic flux estimatorestimates the vector of the stator magnetic flux based on the coilresistance, the α-axis component and the β-axis component of thedetected current, and the α-axis component and the γ-axis component ofthe voltage command.
 8. A magnetic flux estimating device of an electricmotor, comprising: a variable low-pass filter for applying a low-passfilter to a difference between an applied voltage to the electric motorand a voltage drop caused by a coil resistance of the electric motor ata cut-off frequency according to a frequency of the applied voltage; anda phase adjuster for retarding at least one of an output phase of thevariable low-pass filter and a phase of the difference before inputtedinto the variable low-pass filter.
 9. A method of estimating a magneticflux of an electric motor, comprising: applying a low-pass filter to adifference between an applied voltage to the electric motor and avoltage drop caused by a coil resistance of the electric motor at acut-off frequency according to a frequency of the applied voltage; andretarding at least one of a phase of the difference after the low-passfilter is applied and a phase of the difference before the low-passfilter is applied.